package com.umpay.dto.merBusi.req.bindcard;


import org.hibernate.validator.constraints.NotEmpty;

import com.umpay.annotation.Pattern;
import com.umpay.dto.merBusi.req.CommonBusiReq;

/*******************************************************************
 * description : 企业商户绑卡请求类
 * @author zhangru
 * @date 2018年10月26日 下午5:20:46
 * @version 1.0
 *******************************************************************/
public class EnterpriseBindCardBusiReq extends CommonBusiReq{

	@NotEmpty(message = "商户号不能为空")
	@Pattern(message="商户号格式不正确")
	private String merId;
	
	@NotEmpty(message = "业务产品号不能为空")
	@Pattern(message="业务产品号格式不正确")
	private String bProductId;
	
	@NotEmpty(message = "支付产品号不能为空")
	@Pattern(message="支付产品号格式不正确")
	private String pProductId;
	
	@NotEmpty(message = "商户订单号不能为空")
	@Pattern(message="商户订单号格式不正确")
	private String orderId;
	
	@NotEmpty(message = "商户订单日期不能为空")
	@Pattern(message="商户订单日期格式不正确")
	private String orderDate;
	
	@NotEmpty(message = "联动用户号不能为空")
	@Pattern(message="联动用户号格式不正确")
	private String userId;
	
	@NotEmpty(message = "企业银行账号不能为空")
	@Pattern(message="企业银行账号格式不正确")
	private String bankAccount;
	
	@NotEmpty(message = "企业银行账号名称不能为空")
	@Pattern(message = "企业银行账号名称格式不正确")
	private String bankAccountName;//	对公账号名称	变长256	Y	DES加密
	
	@NotEmpty(message = "银行名称不能为空")
	@Pattern(message = "银行名称格式不正确")
	private String bankName;//	银行名称	变长32	Y
	
	@NotEmpty(message = "发卡行ID不能为空")
	@Pattern(message="发卡行ID格式不正确")
	private String binBankId;//	银行编号	变长8	Y	
	
	@NotEmpty(message = "银行编号不能为空")
	@Pattern(message="银行编号格式不正确")
	private String gateId; //	银行编号	变长8	后续提供	Y
	
	@NotEmpty(message = "开户行支行全称不能为空")
	@Pattern(message = "开户行支行全称格式不正确")
	private String bankBranchName	;//开户行支行全称	变长128	Y	
	
	@Pattern(message = "开户省格式不正确")
	private String bankProvName;//	开户省	
	
	@Pattern(message = "开户市格式不正确")
	private String bankAreaName;//	开户市	
	
	@Pattern(message="服务器异步通知路径格式不正确")
	private String notifyUrl;
	
	@Pattern(message = "手机号格式不正确")
	protected String mobileId;//手机号码

	public String getMerId() {
		return merId;
	}

	public void setMerId(String merId) {
		this.merId = merId;
	}

	public String getbProductId() {
		return bProductId;
	}

	public void setbProductId(String bProductId) {
		this.bProductId = bProductId;
	}

	public String getpProductId() {
		return pProductId;
	}

	public void setpProductId(String pProductId) {
		this.pProductId = pProductId;
	}

	public String getOrderId() {
		return orderId;
	}

	public void setOrderId(String orderId) {
		this.orderId = orderId;
	}

	public String getOrderDate() {
		return orderDate;
	}

	public void setOrderDate(String orderDate) {
		this.orderDate = orderDate;
	}

	public String getUserId() {
		return userId;
	}

	public void setUserId(String userId) {
		this.userId = userId;
	}

	public String getBankAccount() {
		return bankAccount;
	}

	public void setBankAccount(String bankAccount) {
		this.bankAccount = bankAccount;
	}

	public String getBankAccountName() {
		return bankAccountName;
	}

	public void setBankAccountName(String bankAccountName) {
		this.bankAccountName = bankAccountName;
	}

	public String getBankName() {
		return bankName;
	}

	public void setBankName(String bankName) {
		this.bankName = bankName;
	}

	public String getBinBankId() {
		return binBankId;
	}

	public void setBinBankId(String binBankId) {
		this.binBankId = binBankId;
	}

	public String getBankBranchName() {
		return bankBranchName;
	}

	public void setBankBranchName(String bankBranchName) {
		this.bankBranchName = bankBranchName;
	}

	public String getBankProvName() {
		return bankProvName;
	}

	public void setBankProvName(String bankProvName) {
		this.bankProvName = bankProvName;
	}

	public String getBankAreaName() {
		return bankAreaName;
	}

	public void setBankAreaName(String bankAreaName) {
		this.bankAreaName = bankAreaName;
	}

	public String getNotifyUrl() {
		return notifyUrl;
	}

	public void setNotifyUrl(String notifyUrl) {
		this.notifyUrl = notifyUrl;
	}

	public String getGateId() {
		return gateId;
	}

	public void setGateId(String gateId) {
		this.gateId = gateId;
	}

	public String getMobileId() {
		return mobileId;
	}

	public void setMobileId(String mobileId) {
		this.mobileId = mobileId;
	}

	@Override
	public String toString() {
		return "EnterpriseBindCardBusiReq [merId=" + merId + ", bProductId=" + bProductId + ", pProductId=" + pProductId
		        + ", orderId=" + orderId + ", orderDate=" + orderDate + ", userId=" + userId + ", bankAccount="
		        + bankAccount + ", bankAccountName=" + bankAccountName + ", bankName=" + bankName + ", binBankId="
		        + binBankId + ", gateId=" + gateId + ", bankBranchName=" + bankBranchName + ", bankProvName="
		        + bankProvName + ", bankAreaName=" + bankAreaName + ", notifyUrl=" + notifyUrl + ", mobileId=" + mobileId + "]";
	}

	
}
